
<!DOCTYPE HTML>
<html lang="" >
    <head>
        <meta charset="UTF-8">
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
        <title>Backup · RxDB - JavaScript Database</title>
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="description" content="">
        <meta name="generator" content="GitBook 3.2.3">
        
        
        
    
    <link rel="stylesheet" href="gitbook/style.css">

    
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-expandable-chapters/expandable-chapters.css">
                
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-highlight/website.css">
                
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-search/search.css">
                
            
                
                <link rel="stylesheet" href="gitbook/gitbook-plugin-fontsettings/website.css">
                
            
        

    

    
        
        <link rel="stylesheet" href="styles/website.css">
        
    
        
    
        
    
        
    
        
    
        
    

        
    
    
    <meta name="HandheldFriendly" content="true"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <link rel="apple-touch-icon-precomposed" sizes="152x152" href="gitbook/images/apple-touch-icon-precomposed-152.png">
    <link rel="shortcut icon" href="gitbook/images/favicon.ico" type="image/x-icon">

    
    <link rel="next" href="query-cache.html" />
    
    
    <link rel="prev" href="cleanup.html" />
    

    </head>
    <body>
        
<div class="book">
    <div class="book-summary">
        
            
<div id="book-search-input" role="search">
    <input type="text" placeholder="Type to search" />
</div>

            
                <nav role="navigation">
                


<ul class="summary">
    
    
    
        
        <li>
            <a href="/" target="_blank" class="custom-link">RxDB</a>
        </li>
    
        
        <li>
            <a href="https://twitter.com/intent/user?screen_name=rxdbjs" target="_blank" class="custom-link">Follow @twitter </a>
        </li>
    
        
        <li>
            <a href="https://discord.gg/tqt9ZttJfD" target="_blank" class="custom-link">Chat @discord </a>
        </li>
    
        
        <li>
            <a href="https://github.com/pubkey/rxdb" target="_blank" class="custom-link">Star @github </a>
        </li>
    
        
        <li>
            <a href="https://github.com/sponsors/pubkey" target="_blank" class="custom-link">Donate @github </a>
        </li>
    
    

    
    <li class="divider"></li>
    

    
        
        
    
        <li class="chapter " data-level="1.1" data-path="./">
            
                <a href="./">
            
                    
                    Introduction
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.2" data-path="quickstart.html">
            
                <a href="quickstart.html">
            
                    
                    Quickstart
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.3" data-path="install.html">
            
                <a href="install.html">
            
                    
                    Install
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.3.1" data-path="install.html">
            
                <a href="install.html#npm">
            
                    
                    npm
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.3.2" data-path="install.html">
            
                <a href="install.html#import">
            
                    
                    import
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.4" data-path="dev-mode.html">
            
                <a href="dev-mode.html">
            
                    
                    Dev Mode
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5" data-path="rx-database.html">
            
                <a href="rx-database.html">
            
                    
                    RxDatabase
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.5.1" data-path="rx-database.html">
            
                <a href="rx-database.html#creation">
            
                    
                    Creation
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.5.1.1" data-path="rx-database.html">
            
                <a href="rx-database.html#name">
            
                    
                    name
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.1.2" data-path="rx-database.html">
            
                <a href="rx-database.html#adapter">
            
                    
                    adapter
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.1.3" data-path="rx-database.html">
            
                <a href="rx-database.html#password">
            
                    
                    password
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.1.4" data-path="rx-database.html">
            
                <a href="rx-database.html#multiinstance">
            
                    
                    multiInstance
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.1.5" data-path="rx-database.html">
            
                <a href="rx-database.html#eventreduce">
            
                    
                    eventReduce
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.1.6" data-path="rx-database.html">
            
                <a href="rx-database.html#ignoreduplicate">
            
                    
                    ignoreDuplicate
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.1.7" data-path="rx-database.html">
            
                <a href="rx-database.html#pouchSettings">
            
                    
                    pouchSettings
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.5.2" data-path="rx-database.html">
            
                <a href="rx-database.html#functions">
            
                    
                    Functions
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.5.2.1" data-path="rx-database.html">
            
                <a href="rx-database.html#observe-with-">
            
                    
                    $
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.2" data-path="rx-database.html">
            
                <a href="rx-database.html#dump">
            
                    
                    exportJSON()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.3" data-path="rx-database.html">
            
                <a href="rx-database.html#importdump">
            
                    
                    importJSON()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.4" data-path="rx-database.html">
            
                <a href="rx-database.html#server">
            
                    
                    server()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.5" data-path="rx-database.html">
            
                <a href="rx-database.html#waitforleadership">
            
                    
                    waitForLeadership()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.6" data-path="rx-database.html">
            
                <a href="rx-database.html#requestidlepromise">
            
                    
                    requestIdlePromise()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.7" data-path="rx-database.html">
            
                <a href="rx-database.html#destroy">
            
                    
                    destroy()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.8" data-path="rx-database.html">
            
                <a href="rx-database.html#remove">
            
                    
                    remove()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.9" data-path="rx-database.html">
            
                <a href="rx-database.html#checkadapter">
            
                    
                    checkAdapter()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.5.2.10" data-path="rx-database.html">
            
                <a href="rx-database.html#isrxdatabase">
            
                    
                    isRxDatabase()
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.6" data-path="rx-schema.html">
            
                <a href="rx-schema.html">
            
                    
                    RxSchema
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.6.1" data-path="rx-schema.html">
            
                <a href="rx-schema.html#example">
            
                    
                    Example
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.2" data-path="rx-schema.html">
            
                <a href="rx-schema.html#create-a-collection-with-the-schema">
            
                    
                    Create a collection with the schema
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.3" data-path="rx-schema.html">
            
                <a href="rx-schema.html#version">
            
                    
                    version
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.4" data-path="rx-schema.html">
            
                <a href="rx-schema.html#keycompression">
            
                    
                    keyCompression
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.5" data-path="rx-schema.html">
            
                <a href="rx-schema.html#indexes">
            
                    
                    indexes
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.6" data-path="rx-schema.html">
            
                <a href="rx-schema.html#attachments">
            
                    
                    attachments
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.7" data-path="rx-schema.html">
            
                <a href="rx-schema.html#default">
            
                    
                    default
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.6.8" data-path="rx-schema.html">
            
                <a href="rx-schema.html#final">
            
                    
                    final
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.7" data-path="schema-validation.html">
            
                <a href="schema-validation.html">
            
                    
                    Schema Validation
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8" data-path="rx-collection.html">
            
                <a href="rx-collection.html">
            
                    
                    RxCollection
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.8.1" data-path="rx-collection.html">
            
                <a href="rx-collection.html#creating-a-collection">
            
                    
                    Creation
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.8.1.1" data-path="rx-collection.html">
            
                <a href="rx-collection.html#name">
            
                    
                    name
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.1.2" data-path="rx-collection.html">
            
                <a href="rx-collection.html#schema">
            
                    
                    schema
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.1.3" data-path="rx-collection.html">
            
                <a href="rx-collection.html#orm-functions">
            
                    
                    ORM-functions
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.1.4" data-path="rx-collection.html">
            
                <a href="rx-collection.html#Migration">
            
                    
                    Migration
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.8.2" data-path="rx-collection.html">
            
                <a href="rx-collection.html#functions">
            
                    
                    Functions
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.8.2.1" data-path="rx-collection.html">
            
                <a href="rx-collection.html#observe-">
            
                    
                    $
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.2" data-path="rx-collection.html">
            
                <a href="rx-collection.html#insert">
            
                    
                    insert()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.3" data-path="rx-collection.html">
            
                <a href="rx-collection.html#bulkinsert">
            
                    
                    bulkInsert()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.4" data-path="rx-collection.html">
            
                <a href="rx-collection.html#bulkremove">
            
                    
                    bulkRemove()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.5" data-path="rx-collection.html">
            
                <a href="rx-collection.html#upsert">
            
                    
                    upsert()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.6" data-path="rx-collection.html">
            
                <a href="rx-collection.html#incrementalUpsert">
            
                    
                    incrementalUpsert()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.7" data-path="rx-collection.html">
            
                <a href="rx-collection.html#find">
            
                    
                    find()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.8" data-path="rx-collection.html">
            
                <a href="rx-collection.html#findone">
            
                    
                    findOne()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.9" data-path="rx-collection.html">
            
                <a href="rx-collection.html#findbyids">
            
                    
                    findByIds()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.10" data-path="rx-collection.html">
            
                <a href="rx-collection.html#findbyids$">
            
                    
                    findByIds$()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.11" data-path="rx-collection.html">
            
                <a href="rx-collection.html#dump">
            
                    
                    exportJSON()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.12" data-path="rx-collection.html">
            
                <a href="rx-collection.html#importdump">
            
                    
                    importJSON()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.13" data-path="rx-collection.html">
            
                <a href="rx-collection.html#remove">
            
                    
                    remove()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.14" data-path="rx-collection.html">
            
                <a href="rx-collection.html#destroy">
            
                    
                    destroy()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.8.2.15" data-path="rx-collection.html">
            
                <a href="rx-collection.html#isrxcollection">
            
                    
                    isRxCollection()
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.9" data-path="rx-document.html">
            
                <a href="rx-document.html">
            
                    
                    RxDocument
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.9.1" data-path="rx-document.html">
            
                <a href="rx-document.html#insert">
            
                    
                    Insert
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.2" data-path="rx-document.html">
            
                <a href="rx-document.html#find">
            
                    
                    Find
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3" data-path="rx-document.html">
            
                <a href="rx-document.html#functions">
            
                    
                    Functions
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.9.3.1" data-path="rx-document.html">
            
                <a href="rx-document.html#get">
            
                    
                    get()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.2" data-path="rx-document.html">
            
                <a href="rx-document.html#get$">
            
                    
                    get$()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.3" data-path="rx-document.html">
            
                <a href="rx-document.html#proxy-get">
            
                    
                    proxy-get
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.4" data-path="rx-document.html">
            
                <a href="rx-document.html#update">
            
                    
                    update()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.5" data-path="rx-document.html">
            
                <a href="rx-document.html#incrementalModify">
            
                    
                    incrementalModify()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.6" data-path="rx-document.html">
            
                <a href="rx-document.html#incrementalPatch">
            
                    
                    incrementalPatch()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.7" data-path="rx-document.html">
            
                <a href="rx-document.html#observe-">
            
                    
                    $
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.8" data-path="rx-document.html">
            
                <a href="rx-document.html#remove">
            
                    
                    remove()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.9" data-path="rx-document.html">
            
                <a href="rx-document.html#deleted$">
            
                    
                    deleted$
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.10" data-path="rx-document.html">
            
                <a href="rx-document.html#tojson">
            
                    
                    toJSON()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.11" data-path="rx-document.html">
            
                <a href="rx-document.html#set">
            
                    
                    set()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.12" data-path="rx-document.html">
            
                <a href="rx-document.html#save">
            
                    
                    save()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.9.3.13" data-path="rx-document.html">
            
                <a href="rx-document.html#isrxdocument">
            
                    
                    isRxDocument()
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.10" data-path="rx-query.html">
            
                <a href="rx-query.html">
            
                    
                    RxQuery
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.10.1" data-path="rx-query.html">
            
                <a href="rx-query.html#find">
            
                    
                    find()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.2" data-path="rx-query.html">
            
                <a href="rx-query.html#findOne">
            
                    
                    findOne()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.3" data-path="rx-query.html">
            
                <a href="rx-query.html#exec">
            
                    
                    exec()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.4" data-path="rx-query.html">
            
                <a href="rx-query.html#observe-">
            
                    
                    $
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.5" data-path="rx-query.html">
            
                <a href="rx-query.html#update">
            
                    
                    update()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.6" data-path="rx-query.html">
            
                <a href="rx-query.html#remove">
            
                    
                    remove()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.7" data-path="rx-query.html">
            
                <a href="rx-query.html#doesDocumentDataMatch">
            
                    
                    doesDocumentDataMatch()
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.8" data-path="rx-query.html">
            
                <a href="rx-query.html#setting-a-specific-index">
            
                    
                    Specific Index
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.9" data-path="rx-query.html">
            
                <a href="rx-query.html#examples">
            
                    
                    Examples
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.10.10" data-path="rx-query.html">
            
                <a href="rx-query.html#isrxquery">
            
                    
                    isRxQuery()
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.11" data-path="rx-storage.html">
            
                <a href="rx-storage.html">
            
                    
                    RxStorage
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.11.1" data-path="rx-storage-performance.html">
            
                <a href="rx-storage-performance.html">
            
                    
                    RxStorage Performance
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.2" data-path="rx-storage-dexie.html">
            
                <a href="rx-storage-dexie.html">
            
                    
                    RxStorage Dexie.js
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.3" data-path="rx-storage-lokijs.html">
            
                <a href="rx-storage-lokijs.html">
            
                    
                    RxStorage LokiJS
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.4" data-path="rx-storage-memory.html">
            
                <a href="rx-storage-memory.html">
            
                    
                    RxStorage Memory
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.5" data-path="rx-storage-indexeddb.html">
            
                <a href="rx-storage-indexeddb.html">
            
                    
                    RxStorage IndexedDB
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.6" data-path="rx-storage-sqlite.html">
            
                <a href="rx-storage-sqlite.html">
            
                    
                    RxStorage SQLite
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.7" data-path="rx-storage-foundationdb.html">
            
                <a href="rx-storage-foundationdb.html">
            
                    
                    RxStorage FoundationDB
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.8" data-path="rx-storage-worker.html">
            
                <a href="rx-storage-worker.html">
            
                    
                    RxStorage Worker
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.9" data-path="rx-storage-shared-worker.html">
            
                <a href="rx-storage-shared-worker.html">
            
                    
                    RxStorage Shared Worker
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.10" data-path="rx-storage-remote.html">
            
                <a href="rx-storage-remote.html">
            
                    
                    RxStorage Remote
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.11" data-path="rx-storage-memory-synced.html">
            
                <a href="rx-storage-memory-synced.html">
            
                    
                    RxStorage Memory Synced
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.12" data-path="rx-storage-sharding.html">
            
                <a href="rx-storage-sharding.html">
            
                    
                    RxStorage Sharding
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.13" data-path="rx-storage-localstorage-meta-optimizer.html">
            
                <a href="rx-storage-localstorage-meta-optimizer.html">
            
                    
                    RxStorage Localstorage Meta Optimizer
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.11.14" data-path="electron.html">
            
                <a href="electron.html#rxstorage-electron-ipcrenderer--ipcmain">
            
                    
                    RxStorage Electron IpcRenderer & IpcMain
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.12" data-path="replication.html">
            
                <a href="replication.html">
            
                    
                    Replication
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.12.1" data-path="replication-graphql.html">
            
                <a href="replication-graphql.html">
            
                    
                    Replication GraphQL
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.12.2" data-path="replication-websocket.html">
            
                <a href="replication-websocket.html">
            
                    
                    Replication Websocket
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.12.3" data-path="replication-couchdb.html">
            
                <a href="replication-couchdb.html">
            
                    
                    Replication CouchDB
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.12.4" data-path="replication-p2p.html">
            
                <a href="replication-p2p.html">
            
                    
                    Replication P2P
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.12.5" data-path="replication-firestore.html">
            
                <a href="replication-firestore.html">
            
                    
                    Replication Firestore
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.13" data-path="rx-attachment.html">
            
                <a href="rx-attachment.html">
            
                    
                    RxAttachment
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.14" data-path="middleware.html">
            
                <a href="middleware.html">
            
                    
                    Middleware-hooks
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.15" data-path="orm.html">
            
                <a href="orm.html">
            
                    
                    ORM/DRM
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.16" data-path="population.html">
            
                <a href="population.html">
            
                    
                    Population
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.17" data-path="encryption.html">
            
                <a href="encryption.html">
            
                    
                    Encryption
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.18" data-path="key-compression.html">
            
                <a href="key-compression.html">
            
                    
                    Key Compression
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.19" data-path="data-migration.html">
            
                <a href="data-migration.html">
            
                    
                    DataMigration
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.20" data-path="leader-election.html">
            
                <a href="leader-election.html">
            
                    
                    LeaderElection
            
                </a>
            

            
        </li>
    

    
        
        <li class="divider"></li>
        
        
    
        <li class="chapter " data-level="2.1" data-path="cleanup.html">
            
                <a href="cleanup.html">
            
                    
                    Cleanup
            
                </a>
            

            
        </li>
    
        <li class="chapter active" data-level="2.2" data-path="backup.html">
            
                <a href="backup.html">
            
                    
                    Backup
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.3" data-path="query-cache.html">
            
                <a href="query-cache.html">
            
                    
                    QueryCache
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.4" data-path="rx-local-document.html">
            
                <a href="rx-local-document.html">
            
                    
                    LocalDocuments
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.5" data-path="crdt.html">
            
                <a href="crdt.html">
            
                    
                    CRDT
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.6" data-path="third-party-plugins.html">
            
                <a href="third-party-plugins.html">
            
                    
                    Third Party Plugins
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.7" data-path="plugins.html">
            
                <a href="plugins.html">
            
                    
                    Creating Plugins
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.8" data-path="query-optimizer.html">
            
                <a href="query-optimizer.html">
            
                    
                    Query Optimizer
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.9" data-path="storage-migration.html">
            
                <a href="storage-migration.html">
            
                    
                    Storage Migration
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.10" data-path="transactions-conflicts-revisions.html">
            
                <a href="transactions-conflicts-revisions.html">
            
                    
                    Transactions, Conflicts and Revisions
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.11" >
            
                <a target="_blank" href="https://rxdb.info/premium.html">
            
                    
                    RxDB Premium
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.12" >
            
                <span>
            
                    
                    Tutorials
            
                </span>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="2.12.1" data-path="tutorials/typescript.html">
            
                <a href="tutorials/typescript.html">
            
                    
                    Use RxDB with Typescript
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.12.2" data-path="nodejs-database.html">
            
                <a href="nodejs-database.html">
            
                    
                    RxDB as Node.js Database
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="2.13" >
            
                <span>
            
                    
                    Opinions
            
                </span>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="2.13.1" data-path="offline-first.html">
            
                <a href="offline-first.html">
            
                    
                    Offline First
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.2" data-path="downsides-of-offline-first.html">
            
                <a href="downsides-of-offline-first.html">
            
                    
                    Downsides of Offline First
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.3" data-path="slow-indexeddb.html">
            
                <a href="slow-indexeddb.html">
            
                    
                    Slow IndexedDB
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.4" data-path="why-nosql.html">
            
                <a href="why-nosql.html">
            
                    
                    Why NoSQL
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.5" data-path="alternatives.html">
            
                <a href="alternatives.html">
            
                    
                    Alternatives
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.6" data-path="react-native-database.html">
            
                <a href="react-native-database.html">
            
                    
                    React Native Database
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.7" data-path="capacitor-database.html">
            
                <a href="capacitor-database.html">
            
                    
                    Capacitor Database
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.13.8" data-path="electron-database.html">
            
                <a href="electron-database.html">
            
                    
                    Electron Database
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="2.14" data-path="questions-answers.html">
            
                <a href="questions-answers.html">
            
                    
                    Questions & Answers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.15" data-path="contribute.html">
            
                <a href="contribute.html">
            
                    
                    Contribute
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16" >
            
                <span>
            
                    
                    Release Notes
            
                </span>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="2.16.1" >
            
                <a target="_blank" href="https://github.com/pubkey/rxdb/blob/master/CHANGELOG.md">
            
                    
                    CHANGELOG
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.2" data-path="releases/14.0.0.html">
            
                <a href="releases/14.0.0.html">
            
                    
                    14.0.0
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.3" data-path="releases/13.0.0.html">
            
                <a href="releases/13.0.0.html">
            
                    
                    13.0.0
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.4" data-path="releases/12.0.0.html">
            
                <a href="releases/12.0.0.html">
            
                    
                    12.0.0
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.5" data-path="releases/11.0.0.html">
            
                <a href="releases/11.0.0.html">
            
                    
                    11.0.0
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.6" data-path="releases/10.0.0.html">
            
                <a href="releases/10.0.0.html">
            
                    
                    10.0.0
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.7" data-path="releases/9.0.0.html">
            
                <a href="releases/9.0.0.html">
            
                    
                    9.0.0
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.16.8" data-path="releases/8.0.0.html">
            
                <a href="releases/8.0.0.html">
            
                    
                    8.0.0
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="2.17" >
            
                <span>
            
                    
                    Deprecated
            
                </span>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="2.17.1" data-path="rx-storage-pouchdb.html">
            
                <a href="rx-storage-pouchdb.html">
            
                    
                    RxStorage PouchDB
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="2.17.2" data-path="adapters.html">
            
                <a href="adapters.html">
            
                    
                    RxStorage PouchDB Adapters
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

    
        
        <li class="divider"></li>
        
        
    
        <li class="chapter " data-level="3.1" >
            
                <a target="_blank" href="https://rxdb.info/imprint.html">
            
                    
                    Imprint
            
                </a>
            

            
        </li>
    

    

    <li class="divider"></li>

    <li>
        <a href="https://www.gitbook.com" target="blank" class="gitbook-link">
            Published with GitBook
        </a>
    </li>
</ul>


                </nav>
            
        
    </div>

    <div class="book-body">
        
            <div class="body-inner">
                
                    

<div class="book-header" role="navigation">
    

    <!-- Title -->
    <h1>
        <i class="fa fa-circle-o-notch fa-spin"></i>
        <a href="." >Backup</a>
    </h1>
</div>




                    <div class="page-wrapper" tabindex="-1" role="main">
                        <div class="page-inner">
                            
<div id="book-search-results">
    <div class="search-noresults">
    
                                <section class="normal markdown-section">
                                
                                <h1 id="backup">Backup</h1>
<p>With the backup plugin you can write the current database state and ongoing changes into folders on the filesystem.
The files are written in plain json together with their attachments.</p>
<p>This is useful to:</p>
<ul>
<li>Consume the database content with other software that cannot replicate with RxDB</li>
<li>Write a backup of the database to a remote server by mounting the backup folder on the other server.</li>
</ul>
<h2 id="import">import</h2>
<p>The backup plugin works only in node.js, not in browser.
This means we have to import it to RxDB before it can be used.</p>
<pre><code class="lang-javascript"><span class="hljs-keyword">import</span> { addRxPlugin } <span class="hljs-keyword">from</span> <span class="hljs-string">&apos;rxdb&apos;</span>;
<span class="hljs-keyword">import</span> { RxDBBackupPlugin } <span class="hljs-keyword">from</span> <span class="hljs-string">&apos;rxdb/plugins/backup&apos;</span>;
addRxPlugin(RxDBBackupPlugin);
</code></pre>
<h2 id="one-time-backup">one-time backup</h2>
<p>Write the whole database to the filesystem <strong>once</strong>.
When called multiple times, it will continue from the last checkpoint and not start all over again.</p>
<pre><code class="lang-javascript">const backupOptions = {
    // if false, a one-time backup will be written
    live: false,
    // the folder where the backup will be stored
    directory: &apos;/my-backup-folder/,
    // if true, attachments will also be saved
    attachments: true
}
const backupState = myDatabase.backup(backupOptions);
await backupState.awaitInitialBackup();

// call again to run from the last checkpoint
const backupState2 = myDatabase.backup(backupOptions);
await backupState2.awaitInitialBackup();
</code></pre>
<h2 id="live-backup">live backup</h2>
<p>When <code>live: true</code> is set, the backup will write all ongoing changes to the backup directory.</p>
<pre><code class="lang-javascript">const backupOptions = {
    // set live: true to have an ongoing backup
    live: true,
    directory: &apos;/my-backup-folder/,
    attachments: true
}
const backupState = myDatabase.backup(backupOptions);

// you can still await the initial backup write, but further changes will still be processed.
await backupState.awaitInitialBackup();
</code></pre>
<h2 id="writeevents">writeEvents$</h2>
<p>You can listen to the <code>writeEvents$</code> Observable to get notified about written backup files.</p>
<pre><code class="lang-javascript">const backupOptions = {
    live: false,
    directory: &apos;/my-backup-folder/,
    attachments: true
}
const backupState = myDatabase.backup(backupOptions);

const subscription = backupState.writeEvents$.subscribe(writeEvent =&gt; console.dir(writeEvent));
/*
&gt; {
    collectionName: &apos;humans&apos;,
    documentId: &apos;foobar&apos;,
    files: [
        &apos;/my-backup-folder/foobar/document.json&apos;
    ],
    deleted: false
}
*/
</code></pre>
<h2 id="import-backup">Import backup</h2>
<p>It is currently not possible to import from a written backup. If you need this functionality, please make a pull request.</p>

                                
                                </section>
                            
    </div>
    <div class="search-results">
        <div class="has-results">
            
            <h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1>
            <ul class="search-results-list"></ul>
            
        </div>
        <div class="no-results">
            
            <h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
            
        </div>
    </div>
</div>

                        </div>
                    </div>
                
            </div>

            
                
                <a href="cleanup.html" class="navigation navigation-prev " aria-label="Previous page: Cleanup">
                    <i class="fa fa-angle-left"></i>
                </a>
                
                
                <a href="query-cache.html" class="navigation navigation-next " aria-label="Next page: QueryCache">
                    <i class="fa fa-angle-right"></i>
                </a>
                
            
        
    </div>

    <script>
        var gitbook = gitbook || [];
        gitbook.push(function() {
            gitbook.page.hasChanged({"page":{"title":"Backup","level":"2.2","depth":1,"next":{"title":"QueryCache","level":"2.3","depth":1,"path":"query-cache.md","ref":"./query-cache.md","articles":[]},"previous":{"title":"Cleanup","level":"2.1","depth":1,"path":"cleanup.md","ref":"./cleanup.md","articles":[]},"dir":"ltr"},"config":{"plugins":["edit-link","github","custom-favicon","-sharing","expandable-chapters","scripts"],"root":".","styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"pluginsConfig":{"github":{"url":"https://github.com/pubkey/rxdb"},"scripts":{"files":["./analytics.js","./next-button.js"]},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"fontsettings":{"theme":"white","family":"sans","size":2},"highlight":{},"favicon":"./files/logo/logo.svg","custom-favicon":{},"edit-link":{"label":"","base":"https://github.com/pubkey/rxdb/tree/master/docs-src"},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false},"expandable-chapters":{}},"theme":"default","pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"variables":{},"title":"RxDB - JavaScript Database","links":{"sidebar":{"RxDB":"/","Follow @twitter ":"https://twitter.com/intent/user?screen_name=rxdbjs","Chat @discord ":"https://discord.gg/tqt9ZttJfD","Star @github ":"https://github.com/pubkey/rxdb","Donate @github ":"https://github.com/sponsors/pubkey"}},"gitbook":"3.2.3"},"file":{"path":"backup.md","mtime":"","type":"markdown"},"gitbook":{"version":"3.2.3","time":""},"basePath":".","book":{"language":""}});
        });
    </script>
</div>

        
    <script src="gitbook/gitbook.js"></script>
    <script src="gitbook/theme.js"></script>
    
        
        <script src="gitbook/gitbook-plugin-edit-link/plugin.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-github/plugin.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-expandable-chapters/expandable-chapters.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-scripts/28fd35f20e40e37a9994a4812fc3c7cc-analytics.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-scripts/9bc541ba5d318730a5b44c9770ae18fc-next-button.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-search/search-engine.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-search/search.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-lunr/lunr.min.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-lunr/search-lunr.js"></script>
        
    
        
        <script src="gitbook/gitbook-plugin-fontsettings/fontsettings.js"></script>
        
    

    </body>
</html>

